package com.zkthink.ceres.store.dto;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;

import static com.baomidou.mybatisplus.annotation.SqlCondition.LIKE;

/**
 * @Author cmz
 * @Date 2024-05-16 17:14
 */
@Data
public class ApplyStoreDto {

    @ApiModelProperty(value = "店铺Id")
    private Long storeId;
    
    /**
     * 店铺名称
     */
    @NotBlank(message = "店铺名称必填")
    @ApiModelProperty(value = "店铺名称")
    @Length(max = 200, message = "店铺名称长度不能超过200")
    @TableField(value = "store_name", condition = LIKE)
    @Excel(name = "店铺名称")
    private String storeName;

    /**
     * 店面照
     */
    @NotBlank(message = "店铺照片必填")
    @ApiModelProperty(value = "店面照")
    private String[] storefrontImgList;
    
    /**
     * 经度
     */
    @NotBlank(message = "请选择店铺位置")
    @ApiModelProperty(value = "经度")
    @Length(max = 255, message = "经度长度不能超过255")
    @TableField(value = "longitude", condition = LIKE)
    @Excel(name = "经度")
    private String longitude;

    private String registerCity;

    /**
     * 纬度
     */
    @NotBlank(message = "请选择店铺位置")
    @ApiModelProperty(value = "纬度")
    @Length(max = 255, message = "纬度长度不能超过255")
    @TableField(value = "latitude", condition = LIKE)
    @Excel(name = "纬度")
    private String latitude;

    /**
     * 联系电话
     */
    @NotBlank(message = "联系电话必填")
    @ApiModelProperty(value = "联系电话")
    @TableField(value = "telephone", condition = LIKE)
    @Excel(name = "联系电话")
    private String telephone;

    /**
     * 联系人姓名
     */
    @ApiModelProperty(value = "联系人姓名")
    @Length(max = 255, message = "联系人姓名长度不能超过255")
    @TableField(value = "contacts", condition = LIKE)
    @Excel(name = "联系人姓名")
    private String contacts;

    /**
     * 身份证号
     */
    @NotBlank(message = "身份证号必填")
    @ApiModelProperty(value = "身份证号")
    @Length(max = 30, message = "身份证号长度不能超过30")
    @TableField(value = "id_num", condition = LIKE)
    @Excel(name = "身份证号")
    private String idNum;

    @NotBlank(message = "身份证照片必填")
    @ApiModelProperty(value = "身份证照片集合")
    private String[] idImgList;

    @NotBlank(message = "门店照片介绍必填")
    @ApiModelProperty(value = "门店照片介绍集合")
    private String[] storeintroImgList;

    /**
     * 地址详情
     */
    @NotBlank(message = "地址详情必填")
    @ApiModelProperty(value = "地址详情")
    @Length(max = 255, message = "地址详情长度不能超过255")
    @TableField(value = "address", condition = LIKE)
    @Excel(name = "地址详情")
    private String address;
}
